Rack-mountable shippable network-attached computing device

ABSTRACT

A network-attachable rack-mountable computing device is housed within a shippable enclosure and is configured to mount in a rack. The device may be initialized (e.g., prepared to receive data, and an updateable electronic shipping display set to a shipping destination) by a service provider and shipped, in accordance with a displayed destination address, as a self-contained shipping unit. The device may be coupled with other devices via coupling mechanisms included in an enclosure of the device and may be mounted in a rack at a destination via mounting brackets included in the enclosure of the device. The device may be installed onto a network at the destination and loaded with data. When the device is received back at the service provider, the data is transferred from the device to a service provider storage facility, wiped of data, and prepared to be sent out again.

This application is a continuation of U.S. patent application Ser. No.15/257,788, filed Sep. 6, 2016, which is hereby incorporated byreference herein in its entirety.

BACKGROUND

Growth of data storage capacity and big data has far outpaced the rateof increase of data transmission bandwidth capable of transferring largequantities of data. In some instances transmitting large quantities ofdata from one storage facility to another storage facility may beprohibitively costly (e.g., requiring costly system upgrades) or lengthy(e.g., transmission taking months to years). Alternatively, in someinstances, storage media currently storing large quantities of data maybe physically moved to transfer large quantities of data between storagefacilities. However, physically moving storage media storing largequantities of data may leave the data on legacy hardware or may not bean available option (e.g., when the data is stored at a storage facilityoperated by a storage service on behalf of a customer).

In some instances, data may be transferred between storage facilitiesusing a storage device. The storage device may be shipped from onestorage facility to another storage facility where the data istransferred to another storage system. However, transferring largequantities of data from a storage facility to another storage facilityvia shipping storage devices may involve placing multiple storagedevices into multiple containers and placing labels on the containers.The packaging and labeling process involved in shipping multiple storagedevices may provide numerous opportunities for human mistakes thatprevent a correct storage device from being shipped to a correctdestination. For example, a storage device may be inadvertently placedin a wrong box or a wrong label may be placed on a box. This may cause astorage device to not be received at its intended location. In addition,there are costs associated with packaging storage devices in containersand there are risks that storage devices may be damaged in transport ifnot properly packaged.

In some situations, customers of a storage service may operate in afacility that does not permit computing devices to be placed on a floorof the facility, such as a co-location facility. Such customers mayrequire that any storage devices received by the customer be configuredto mount in a rack.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a system and process for a rack-mountable shippablecomputing device, according to some embodiments.

FIG. 2 illustrates a rack-mountable shippable computing device,according to some embodiments.

FIG. 3 is a schematic view of a rack-mountable shippable computingdevice, according to some embodiments.

FIG. 4A is a side view of a rack-mountable shippable computing deviceshowing a coupling mechanism of the rack-mountable shippable computingdevice, according to some embodiments.

FIG. 4B is a side view of a rack-mountable shippable computing deviceshowing a network-updateable electronic ink shipping display of therack-mountable shippable computing device, according to someembodiments.

FIG. 5A is a perspective view of a rack-mountable shippable computingdevice showing a coupling mechanism of the rack-mountable shippablecomputing device in an extended position, according to some embodiments.

FIG. 5B illustrates a front view of two rack-mountable shippablecomputing devices being coupled together via coupling mechanisms of thetwo rack-mountable shippable computing devices, according to someembodiments.

FIG. 6A is a front view of a rack with multiple rack-mountable shippablecomputing devices mounted in the rack, according to some embodiments.

FIG. 6B is a side view of a rack with multiple rack-mountable shippablecomputing devices mounted in the rack, according to some embodiments.

FIG. 7 is a flow diagram of a process of using a rack-mountableshippable computing device, according to some embodiments.

FIG. 8 is a flow diagram of a provisioning process associated with arack-mountable shippable computing device, according to someembodiments.

FIG. 9 is a flow diagram of a client-side installation processassociated with a rack-mountable shippable computing device, accordingto some embodiments.

FIG. 10 is a flow diagram of a client side process associated with arack-mountable shippable computing device at a customer location,according to some embodiments.

FIG. 11 is a flow diagram of a client-side uninstallation processassociated with a rack-mountable shippable computing device, accordingto some embodiments.

FIG. 12 is a flow diagram of a service provider data ingestion processassociated with a rack-mountable shippable computing device, accordingto some embodiments.

FIGS. 13A-13B illustrate various types of information displayed via anupdateable electronic display of a rack-mountable shippable computingdevice, according to some embodiments.

FIG. 14 is a block diagram illustrating an example computer system thatimplements some or all of the techniques described herein, according todifferent embodiments.

While embodiments are described herein by way of example for severalembodiments and illustrative drawings, those skilled in the art willrecognize that embodiments are not limited to the embodiments ordrawings described. It should be understood, that the drawings anddetailed description thereto are not intended to limit embodiments tothe particular form disclosed, but on the contrary, the intention is tocover all modifications, equivalents and alternatives falling within thespirit and scope as defined by the appended claims. The headings usedherein are for organizational purposes only and are not meant to be usedto limit the scope of the description or the claims. As used throughoutthis application, the word “may” is used in a permissive sense (i.e.,meaning having the potential to), rather than the mandatory sense (i.e.,meaning must). Similarly, the words “include,” “including,” and“includes” mean including, but not limited to.

DETAILED DESCRIPTION OF EMBODIMENTS

Various embodiments describe systems and processes associated with arack-mountable shippable computing device that is configured to mount ina rack at a customer location and that includes an electronic shippingdisplay that is used to display a destination shipping address of therack-mountable shippable computing device.

In some embodiments, a system includes a rack and network-attachabledata transfer devices mounted adjacent to one another in the rack. Thenetwork-attachable data transfer devices each include an enclosure, apersistent storage medium mounted within the enclosure, a networkconnection accessible through the enclosure, and a mounting bracketcoupled to the enclosure. The network connection is configured toprovide access to the persistent storage medium as a network-attachedstorage device. Also, the mounting bracket is configured to extend outfrom the enclosure when the network-attachable data transfer device ismounted in a rack and configured to be stowed in a portion of theenclosure when the network-attachable data transfer device is beingtransported. The network-attachable data transfer devices mountedadjacent to one another in the rack are physically coupled together suchthat the coupled data transfer devices substantially span a width of therack. One of the coupled network-attachable data transfer devices iscoupled with the rack on a first side of the width of the rack via anextended mounting bracket of the data transfer device. In addition,another one of the coupled data transfer devices is coupled with therack on a second side of the width of the rack via an extended mountingbracket of the other one of the coupled network-attachable data transferdevices. For example, network-attachable data transfer devices may becoupled to each other and a mounting bracket of a left one of thecoupled data transfer devices may couple with a left rail of a rack anda mounting bracket of a right one of the coupled data transfer devicesmay couple with a right rail of a rack to mount the couplednetwork-attachable data transfer devices in the rack via coupling therespective mounting brackets to the left and right rails of the rack. Insome embodiments, the coupled network-attachable data transfer devicesmay substantially span a depth of the rack when coupled together andmounted in the rack. In other embodiments, a network-attachable datatransfer device may be mounted in a perpendicular orientation wherein amounting bracket on a front or back side of a length of thenetwork-attachable data transfer device couples with a left rail of arack and another mounting bracket on an other side of the length of thenetwork-attachable data transfer device couples with a right rail of arack. In such embodiments, the network-attachable data transfer devicemay not span a full depth of a rack when mounted in the rack.

In another embodiment, a computing device includes an enclosure, astorage medium mounted within the enclosure, and a mounting bracketcoupled to the enclosure. The mounting bracket is configured to extendout from the enclosure and coupled with a rack when the computing deviceis mounted in the rack and configured to stow in a portion of theenclosure when the computing device is being transported. For example, astowed mounting bracket stowed in a portion of the enclosure may besubstantially flush with a surface of the enclosure such that the stowedmounting bracket does not substantially protrude out from the surface ofthe enclosure.

In another embodiment, a method includes receiving computing devices,coupling the computing devices together such that the computing devicessubstantially span a width of a rack, extending mounting brackets outfrom respective enclosures of respective ones of the coupled computingdevices, coupling the extended mounting brackets to a rack to mount thecoupled computing devices in the rack, and connecting respective networkconnections of each of the computing devices to a network, wherein therespective network connections are accessible through the respectiveenclosures of the computing devices, and wherein the respective networkconnections provide access to respective storage mediums of therespective computing devices.

In some instances, a self-contained device may include an enclosuresuitable for shipping a rack-mountable computing device so that noadditional packaging is necessary. For example, an enclosure of arack-mountable shippable computing device may include an updateableelectronic display that displays shipping information such that acarrier can scan or read the shipping information from the display anddeliver the device to a destination based on the displayed shippinginformation. In some embodiments, a rack-mountable shippable computingdevice may be used for moving large amounts of data from one large datastorage facility to another large data storage facility. For example, arack-mountable shippable computing device may be used for moving datafrom one storage facility to another storage facility when datatransmission networks cannot move the data fast enough. For instance, apetabyte of data can take years to transmit over some networkconnections, whereas transfer of the petabyte of data from a storagefacility to a rack-mountable shippable transfer device may take days orless and physical shipment of the rack-mountable shippable computingdevice may be as fast as overnight. A rack-mountable shippable computingdevice may also be used for moving data from one storage facility toanother facility when a highly secure means of transfer is required.

Some users of portable data transfer devices may desire to mount theportable data transfer devices in a rack. For example, some facilities,such as co-location facilities, may not permit computing devices to beplaced on the ground and may require that computing devices installed atthe co-location facility be mounted in racks. As another example, someusers of portable data transfer devices may operate in facilities withlimited amounts of space or with infrastructure resources designed tosupport computing devices mounted in racks. For such users, it may bedesirable to mount portable data transfer devices in existing racks andutilize existing infrastructure resources to operate received portabledata transfer devices.

In some embodiments, a rack-mountable shippable computing device mayinclude mounting brackets configured to be stowed in a portion of anenclosure of the rack-mountable shippable computing device when thedevice is being shipped and configured to extend out from the enclosureto allow the rack-mountable shippable computing device to be mounted ina rack via the mounting brackets. In some embodiments, a rack-mountableshippable computing device may also include one or more couplingmechanisms configured to couple the device with other devices such thatthe coupled devices span a width of a standard width rack. For example,a rack may be a 19″ standard rack in accordance with an ElectronicsIndustries Alliance (EIA) standard for racks. Coupling multiplerack-mountable shippable computing devices together such that thedevices span a width of a standard rack may reduce wasted space in therack.

In some embodiments, a single rack-mountable shippable computing devicemay be configured to mount in a rack without coupling with otherrack-mountable shippable computing devices or other devices. Forexample, a rack-mountable shippable computing device may have a lengththat substantially spans a width of a standard rack. The rack-mountableshippable computing device may include mounting brackets at oppositeends of the length of the device and the mounting brackets may beconfigured to couple with rails on opposite sides of a width of astandard rack. Also, in some embodiments, coupled sets of multiplerack-mountable shippable computing devices may substantially span awidth of a standard rack and include mounting brackets on opposite endsof the set of coupled rack-mountable shippable computing devices. Insuch configurations, the mounting brackets may be configured to couplewith rails on opposite sides of a width of a standard rack.

In some embodiments, a service provider may own or controlrack-mountable shippable computing devices and may use the devices forimport or export of data into or out of facilities that store data onbehalf of a customer. For example, moving data from a customer to astorage service provider via a rack-mountable shippable computing devicemay be referred to as an import and moving data from a storage serviceprovider to a customer via a rack-mountable shippable computing devicemay be referred to as an export. In some embodiments, data may bemulticast, for example, sent from a customer to a storage serviceprovider where the data is uploaded to a storage service and then thedevice is further shipped onto the customer's customers (e.g., via thedevice continuing on from the storage service provider, with the data,after data is uploaded at the storage service provider). A multi-castscenario may apply in the export embodiment, as well. A multi-castembodiment may refer to a single device being loaded with data at asource and then sent to multiple different destinations to distributecopies at the multiple different destinations or may refer to multipledifferent shippable computing devices being loaded with the same copy ofdata and each device being sent to a different destination. In somemulticast embodiments, multiple different rack-mountable shippablecomputing devices, each device transferring a portion of a large amountof data, may be shipped as a group to a first destination and then ontoanother destination, leaving copies of the large amount of data at eachdestination (e.g., seeding different office's) before being returned toa service provider. A customer may request for export of data from theservice provider storage network to multiple locations or customers, forinstance.

For example, some large data storage facilities store large amounts ofdata, but have no way to transfer the large amounts of data external tothe facility. In some instances, an enterprise storage facility may havegrown over time with the data being used exclusively within theenterprise such that external data transmission facilities sufficient toreasonably move large amounts of data were never realized. Moving suchlarge amounts of data to a cloud-based storage solution cost-effectivelyand in a timely manner may be difficult or even impossible.

In a particular example, moving big data (e.g., terabytes or petabytesof data or the like) from one storage facility to another storagefacility may take months or years with current bandwidth solutions. Anattractive alternative may be to locally transfer the big data tomultiple rack-mountable shippable computing devices over a number ofdays or weeks at the one storage facility and then ship the multiplerack-mountable shippable computing devices to the other storage facilityand locally transfer the big data from the multiple rack-mountableshippable computing devices to a destination storage system at the otherstorage facility.

In some embodiments, a rack-mountable shippable computing device may bemounted in a rack at a destination storage facility. While transferringdata to or from a rack-mountable shippable computing device mounted in arack, the rack-mountable shippable computing device may utilize existinginfrastructure resources such as electrical power, cooling, and networkconnections of a destination storage facility.

In some embodiments, a rack-mountable shippable computing device may beequipped with an electronic display as part of or incorporated into theenclosure of the device. In some embodiments, the display may be alow-power display such as an electronic ink display and the display maybe updated with any of various information, including destinationaddresses of where the device is to be shipped. Also, the device may beequipped with various sensors, such as a GPS sensor for trackingshipping progress of the device or environmental sensors such asaccelerometers, temperature sensors, humidity sensors, pressure sensors,or the like. Data associated with the sensors may be displayed by thedisplay. In some embodiments, the device may be ruggedized such that thedevice is less likely to be damaged during transit.

In some embodiments, a rack-mountable shippable computing device isconfigured such that a ruggedized enclosure, surrounding a persistentstorage and incorporating an electronic display act as a self-containedwhole. Such an arrangement may reduce shipping errors. For example,because the persistent storage, the display and the enclosure arecoupled as a self-contained whole, it may not be possible to mismatchpersistent storages intended for one container in a different container.Similarly, it may not be possible to mis-label the shippable unit (e.g.,by putting the wrong label on the device) because the display is builtinto the shippable whole. Thus, errors associated with mismatchedlabels, containers, and items may be reduced by such a rack-mountableshippable computing device.

Various processes may be instituted by a service provider or customerthat uses a rack-mountable shippable computing device, such as processesto keep data secure. For example, a service provider, such as a storageservice provider with a number of devices, may implement a provisioningprocess that ties a particular rack-mountable shippable computing deviceto a particular request for data transfer services. The service providermay install security information on the device and direct the display ofthe device to display a shipping destination associated with the requestand provide the device to a carrier as a self-contained shippingcontainer.

In another process, such as when the customer that requested the servicereceives the rack-mountable shippable computing device, the customer maymount the device in a rack at a customer facility, connect the device toa customer network, and download a proprietary application correspondingto the device. When the application is executed by a customer computeron a customer network, the application may discover the connected deviceon the customer network and validate the computing device. In someembodiments, the application may be used to identify data on thecustomer network that is to be transferred to the device and theapplication may encrypt the identified customer data and load theencrypted data onto the device.

In some embodiments, destination information for the device may beautomatically updated. For example, updated address information may beobtained over a customer network or from memory of the device and may bedisplayed on the electronic display. In some embodiments, the device mayrealize (e.g., based on a GPS sensor) that it is located at a customerlocation and change displayed address information from an address of thecustomer site to an address for a next destination. A customer may thenprovide the device to a carrier as a self-contained shipping containerfor shipment without any other additional packaging or labeling.

In another process, when a rack-mountable shippable computing device isreceived at a service provider (in accordance with an address or a codeindicating an address displayed by the display) an ingestion process maybe performed. For example, the rack-mountable shippable computing devicemay be connected to a service provider network, the data on the devicemay be decrypted and the data on the device may be stored via a storageservice of the service provider. Subsequently, the rack-mountableshippable computing device may be prepared for re-use.

FIG. 1 illustrates a system and process for a rack-mountable shippablecomputing device with network-updateable electronic ink shippingdisplay, according to some embodiments. The illustrated embodimentdepicts movement of a rack-mountable shippable computing device from aservice provider location 120 to a customer location 110 and back to theservice provider location 120 as well as various processes A-G that areperformed along the way by various entities. In some embodiments, thedevice 130 depicted in FIG. 1 may be the same as the device 130 depictedin FIGS. 2-6 and 13A-13B.

Customer location 110 is depicted in FIG. 1. But in some embodiments, acustomer may have other locations and the rack-mountable shippablecomputing device 130 may be shipped to those locations instead of or inaddition to customer location 110, before, or after the depictedshipment B. In some embodiments, multiple different rack-mountableshippable computing devices may be shipped to various locations at thesame time as the depicted shipment. Rack-mountable shippable computingdevices may be shipped to entities other than customers, for example butnot limited to, other enterprise locations of an enterprise, governmententities, other service providers or the like. Computers, such as aserver or desktop computers at a customer location 110 may perform someor all of the processes illustrated in FIGS. 7 and 10, in someembodiments. Computers, such as a server or desktop computers at aservice provider location 120 may perform some or all of the processesillustrated in FIGS. 8 and 12, in some embodiments.

Customer location 110 depicted in FIG. 1 may include racks, such asillustrated in FIGS. 6A-6B, and rack-mountable shippable computingdevices may be mounted in racks at a customer location, such as customerlocation 110, as illustrated in FIGS. 4-6.

In FIG. 1 at item (A) a customer creates, generates or requests that ajob be performed. The job creation or request may be performed via aconsole such as a network-based page or site of a service provider thatthe customer accesses via one or more networks (e.g., network 108). At(B) the service provider provisions a particular rack-mountableshippable computing device 130, instructs the device to display anaddress associated with customer location 110 (e.g., obtained during jobcreation (A)) and ships the device to the requesting customer accordingto job information (e.g., job information that may have been determinedduring generation of the job at request time, in some embodiments). At(C), the device is received at the customer location 110, the device ismounted in a rack at the customer location, and customer data istransferred to the device at the customer location. At (D) an electronicdisplay of the device is updated with a new destination for the device.For example, the service provider may send an updated address vianetwork 108, or the device may recognize it is at the customer locationand automatically update the displayed destination address from a memorystore programmed with the next destination during the provisioning step(B). At (E) the device is provided, by the customer to a shippingcarrier and the device is shipped back to the service provider, forexample the device is shipped back to service provider location 120. Insome embodiments, the device may be sent to one or more other customersites for additional data before being sent back to the serviceprovider. At (F) the device is received back at the service provider,connected to a service provider network, and customer data is ingestedfrom the device into the service provider system. At (G) the device iswiped and is stored until it is provisioned for another job.

Other various use-cases are contemplated. For example, a rack-mountableshippable computing device may be shipped onto other entities, such as acustomer's customers after it has been received by, and the datauploaded at, a storage service provider. In some embodiments, arack-mountable shippable computing device may be sent onto othercustomers distinct from the customer that sent the device to the storageservice provider. In some embodiments, the device may be used todistribute the same data to multiple different sites of the samecustomer. The device may be instructed to display various addresses atvarious times, such that the device is used to multi-cast data, forexample in either the export or import embodiments. It is contemplatedthat the various addresses may be stored on the device at once, such aswhen the device is provisioned or the various addresses may be sent tothe device over a network, such as a cellular network or via a customeror provider network or combination thereof. In some embodiments, thedevice may include logic configured to update the displayed addressbased on the device sensing a geographical position or location of thedevice. For instance, a rack-mountable shippable computing device thatdetermines (e.g., based on a GPS sensor or cellular triangulation) thatit has arrived at one location, may be configured to display the nextaddress stored in memory of the device.

FIG. 2 illustrates a rack-mountable shippable computing device,according to some embodiments. The depicted rack-mountable shippablecomputing device 130 may be used to move large amounts of customer dataoff of customer storage networks or servers to other storage networks orservers, when other forms of transfer (e.g., broadband datatransmission) are unavailable or cost or time prohibitive, as anexample. In some embodiments, a rack-mountable shippable computingdevice may include more, less, or different features or components thanthose depicted.

In the depicted embodiment, rack-mountable shippable computing device130 includes an enclosure 215 surrounding persistent storage 290. Thepersistent storage may include any type of storage such as, but notlimited to hard disk drives, optical media, magnetic tapes, memristorstorage, persistent RAM or solid state storage devices. The enclosuremay be ruggedized (e.g., according to various standards, such asmilitary standards or electronics industry standards) and may beconfigured with an outward-facing electronic display 214 such that whenenclosed by the enclosure, the persistent storage, the enclosure, andthe electronic display form a self-contained shipping container suitablefor shipping without any additional packaging, labeling or the like andsuch that the electronic display 214 acts as to display a destinationlocation (e.g., in lieu of a shipping label). In some embodiments, theenclosure 215 and the display 214 act as reusable shipping components inlieu of cardboard boxes and shipping labels. The enclosure may includevarious mechanisms to facilitate movement of the device 130, such asrollers, handles or the like.

In some embodiments, a rack-mountable shippable computing device, suchas device 130, may include a coupling mechanism configured to couple therack-mountable shippable computing device with other rack-mountabledevices, such as other rack-mountable shippable computing devices. Forexample, device 130 includes male coupling mechanisms 260 and femalecoupling mechanisms 265. In some embodiments, extended male couplingmechanisms of a rack-mountable shippable computing device may be coupledwith female coupling mechanisms of an adjacent rack-mountable device tocouple the devices together. In some embodiments, male couplingmechanisms may be configured to extend out from a space in an enclosure,such as enclosure 215, when a device is to be coupled with anotherdevice, and may be stowed in the space in the enclosure when the deviceis not to be coupled or is to be transported. In some embodiments,various other types of coupling mechanisms may be used to coupledadjacent devices together, for example a tongue and groove couplingmechanism, a dovetail channel coupling mechanism, or other suitablecoupling mechanism may be used.

Also, in some embodiments, a rack-mountable shippable computing device,such as device 130, may include extendable mounting brackets. Extendablemounting brackets, such as extendable mounting brackets 205, may beconfigured to be stowed in a space in an enclosure of a device, such asenclosure 215, and may be configured to extend out from the enclosure tomount a device, such as device 130, in a rack.

Device 130 is illustrated with battery 260 and power connection 250 forpowering some or all of the components of the rack-mountable shippablecomputing device that require power to function. A power connector, suchas connector 250, may be configured to connect a rack-mountableshippable computing device, such as device 130, to an external powersource. In some embodiments, a power connector may power a persistentstorage of a rack-mountable shippable computing device. Other sources ofpower are contemplated, such as kinetic energy sources that rely uponthe motion during shipping to power the rack-mountable shippablecomputing device. In addition other power sources such as solar energysources, or the like are contemplated. Any of various power sources maypower the electronics (e.g., the display or the storage) of arack-mountable shippable computing device, such as device 130.

In some embodiments, a power connector, such as power connector 250, maybe located on a back side of a rack-mountable shippable computingdevice. For example, a switch, such as switch 230, may be located on afront side of a rack-mountable shippable computing device and a powerconnector, such as power connector 250, may be located on a back side ofthe device. Such an arrangement may allow power cabling to extend outfrom a rack-mountable shippable data storage device towards a back sideof a rack when the device is mounted in the rack and may allow a switch,such as switch 230, to be operated from a front side of the rack, whenthe device is mounted in the rack.

In some embodiments, a rack-mountable shippable computing device may bemounted in a rack in a perpendicular orientation. In the perpendicularorientation, a length of a rack-mountable shippable computing device maybe oriented along a width of a rack. Also, in the perpendicularorientation, power connector 250 may be on a left or right side of thedevice when the device is mounted in a rack and switch 230 may be on theopposite side of the device when the device is mounted in a rack. Forexample, in a non-perpendicular orientation, a rack-mountable shippablecomputing device may be mounted in a rack with a front side of thedevice on a front side of the rack and a back side of the device on aback side of the rack, wherein the length of the device runs from thefront of the rack to the back of the rack. However, in a perpendicularorientation the front side and the back side of the rack may be orientedperpendicular to the front side and back side of the rack such that thefront side of the device faces a left or right side of the rack and theback side of the device faces a left or right side of the rack and thelength of the device runs from side to side of the rack.

When a rack-mountable shippable computing device is mounted in a rack ina non-perpendicular orientation, device controls, such as switch 230,may be accessible via a front of the rack. Also, cables connected to thedevice may be routed from the device into a space in a back of a rack.For example, cables connected to power connector 250 and networkinterface 240 may be routed in a space on a back side of a rack.However, in a perpendicular orientation, cables connected to powerconnector 250 and network interface 240 may also be routed to a space ona back side of a rack via cable guides, such as cable guides 270. Inthis way cables may be routed to a back side of a rack when the deviceis mounted in the rack in the non-perpendicular orientation or in theperpendicular orientation.

In some embodiments, extendable mounting brackets, such as extendablemounting brackets 205, may be partially extended (for exampleapproximately 90 degrees) to mount a rack-mountable shippable computingdevice in a rack in a non-perpendicular orientation. In thenon-perpendicular orientation extendable mounting brackets of a firstone of a set of coupled devices may couple with a rack on a first sideof a width of the rack and another set of extendable mounting bracketsof another one of a set of coupled devices may couple with the rack onan other side of the width of the rack. In a perpendicular orientation,extendable mounting brackets may be extended further than in thenon-perpendicular orientation (for example approximately 180 degrees) tomount a rack-mountable shippable computing device in a rack.

Device 130 is depicted with display 214. The display may incorporate anyof various display technologies, such as low-power electronic-ink(E-ink), organic light emitting diodes (OLED), active-matrix organiclight-emitting diode (AMOLED), flexible displays or touch-sensitivedisplays as non-limiting examples. Low-power e-ink displays may providethe benefit of reduced power consumption for a shipping environmentwhere small batteries (e.g., batteries that cost less to ship, are lessexpensive, or take up less shipping space) are preferred. The device 130may be configured with multiple displays 214, in some embodiments. Forexample, some carriers or fulfillment centers label three sides of ashipping container such that the destination of the container can bescanned or read irrespective of the orientation of the container.Similarly, multiple displays can be incorporated into multiple sides ofthe enclosure 215 of the device. For example, the enclosure may beconfigured with 1-6 or more displays, in some embodiments. The variousdisplays may be configured such that the displays are computer readable(e.g., via scanner).

Device 130 is illustrated with network interface 240. The networkinterface 240 may act as an interface between the rack-mountableshippable computing device 130 and various networks, such as LANS, WANSor the like (e.g., via various protocols, such as iSCSI or Ethernet). Insome embodiments, network connection 240 may act as an interfacedirectly to another device (e.g., via SCSI).

Device 130 is illustrated with switch 230. The switch 230 may act as anon-off power switch or as a switch to activate the display, in someembodiments. Device 130 is also illustrated with antenna 220. Theantenna may be configured to facilitate wireless communication between aservice provider or customer and the device. For example, wirelesscommunication may be over various cellular networks, Wi-Fi, or the like(e.g., network 108). For instance, a service provider may send updatedaddress information to a rack-mountable shippable computing device 130via cellular networks while the device 130 is en route to a location.The updated address information may be displayed via display 214 suchthat the device 130 is rerouted on the fly. In other embodiments, thewireless communication channel may be used to send updated shippinginformation for display while a rack-mountable shippable computingdevice is located at a customer site. In some embodiments, cellularnetworks may be used to track a rack-mountable shippable computingdevice.

Device 130 is also illustrated with radio frequency identification(RFID) 280. The RFID may assist with tracking the device, in someinstances. For example, rack-mountable shippable computing devices maybe identified during the provisioning process via a respective RFID ordevices may be identified upon receipt at the customer or upon return tothe service provider by a respective RFID. The RFID may be used to tracka rack-mountable shippable computing device as the device is routedthrough a facility, such as through a service provider's fulfillmentfacility (e.g., while routed on a conveyor system).

In addition, device 130 is illustrated with various sensors 222, 224.The device may be outfitted with any of various sensors including aglobal positioning sensor (GPS), a temperature sensor, a humidity sensoror an accelerometer, all as non-limiting examples. Data may be collectedfrom the sensors and used in various manners, such as to record theenvironment of the device (e.g., hot, cold, moderate, moist) or recordvarious events associated with the device 130, such as a drop, quickmovement, orientation or location of the device 130. Sensor data may bestored locally, sent over a network, such as network 108, or displayedvia a display, such as display 214.

A rack-mountable shippable computing device, such as device 130, may beconfigured with multiple layers of security. For example, data stored onthe device may be encrypted one or more times, with one or more keys.The keys may be determined, stored, controlled or held by variousparties and applied at various steps of the illustrated processes. Forexample, some keys used to encrypt the data stored on the device may bestored separate from the device, while other keys used to encrypt thedata on the device may be stored with the device. The encryption keysmay be applied in multiple layers, in some embodiments.

In some embodiments, a device, such as device 130, may be configured asone or more other types of network-based devices or other electronicdevices, such as transient local hardware for example. In an example,non-exhaustive list, device 130 may be configured as variouscombinations of cryptographic hardware and software (e.g., as a type 1cryptographic device), as a storage gateway, as a web service, afirewall, a high-assurance guard, a server, virtual machine image, oneor more dongles, a data warehousing solution or database service box, orthe like.

FIG. 3 is a schematic view of a rack-mountable shippable computingdevice 130, according to some embodiments. FIG. 3 illustrates variouscomponents and modules of a rack-mountable shippable computing device130. A rack-mountable shippable computing device may be configured withfewer or additional components or modules. Some component or module maybe replaced by other component or modules. For example, the processor310 and memory 312 may be replaced by firmware, in some embodiments.Various components or modules may perform some or all of the processesillustrated in the FIGs., in embodiments.

In FIG. 3, device 130 is illustrated with display 214, network interface306 and persistent storage 350. In the illustrated embodiment, displaydriver 302 provides an interface function between a processor 310 anddisplay 214. For example, to instruct the display to display an address,processor 310 executes computer instructions from memory 312 that sendmessages to display driver 302 that are interpreted by the displaydriver and cause the display driver to display the address on display214.

Network interface 306 acts as an interface between an external network(e.g., a customer network or a service provider network or network 108)and the device. In some embodiments, the network interface is configuredto transmit instructions to the device or to transmit encrypted data tothe persistent storage 350. Wireless interface 308 may be configured toreceive (e.g., via cellular or Wi-Fi network) instructions from theservice provider. For example, the service provider 120 may send updatedaddress information to the device 130 via a cellular network such thatthe displayed address of the device is updated en route, therebychanging the destination for the device in-flight such that the deviceis shipped to the updated address instead of the prior address.

Input/Output (I/O) interface 304 may be configured to coordinate I/Otraffic between processor 310, memory 312, the display driver 302,network interface 306, wireless interface 308, sensor interface(s) 320and persistent storage 350 or a peripheral interface. In someembodiments, I/O interface 304 may perform any necessary protocol,timing or other data transformations to convert data signals from onecomponent (e.g., system memory 312) into a format suitable for use byanother component (e.g., processor 310). In some embodiments, I/Ointerface 304 may include support for devices attached through varioustypes of peripheral buses, such as a variant of the Peripheral ComponentInterconnect (PCI) bus standard or the Universal Serial Bus (USB)standard, for example. In some embodiments, the function of I/Ointerface 304 may be split into two or more separate components, such asa north bridge and a south bridge, for example. Also, in someembodiments, some or all of the functionality of I/O interface 304, suchas an interface to system memory 312, may be incorporated directly intoprocessor 310.

Device 130 is depicted with persistent data storage 350. Persistent datastorage 350 may include any combination of non-volatile storage such ashard drives or flash memory. Persistent storage 350 may be configured(e.g., during a provisioning process) to store large amounts ofencrypted data (e.g., from a large data store such as a customer storagesystem) during shipment from the customer location to a service providerlocation where the data is transferred to a service provider storagesystem.

Device 130 is depicted with power source 330 that may power the variouselectronic components of the device 130 and with sensor(s) 340 andsensor interface(s) 320. As described above, any of various sensor(s)may be incorporated into device 130. Device 130 may also include varioussensor interface(s) 320 that act as an interface between the sensor(s)340 and I/O interface 304. The sensor interfaces may be proprietaryinterfaces, or customized for a particular sensor, in some embodiments.The sensor interfaces may perform various functions such as conversionsof data, analysis of sensor output and output of information based onthe analysis or the like.

FIG. 4A is a side view of a rack-mountable shippable computing deviceshowing a coupling mechanism of the rack-mountable shippable computingdevice, according to some embodiments. Device 130 includes male couplingmechanisms 402 stowed in spaces 410 and female coupling mechanism 404.Also, device 130 includes mounting brackets 406 in an extended position,for example for mounting device 130 in a perpendicular orientation.Device 130 also includes cable guide 408 configured to accept and routea cable from a back side of device 130 to another side of device 130.Device 130 may be equivalent to device 130 described in FIGS. 1-3.

FIG. 4B is a side view of a rack-mountable shippable computing deviceshowing a network-updateable electronic ink shipping display of therack-mountable shippable computing device, according to someembodiments. Device 130 includes display 214, which may be the same asdisplay 214 described in FIGS. 1-3. In FIG. 4B, mounting bracket 214 isshown in a partially extended position, such as would be used to coupledevice 130 to a rail of a rack when device 130 is mounted in the rack ina non-perpendicular orientation, for example when the device is coupledwith one or more other devices that include mounting brackets partiallyextended in a similar manner as mounting bracket 412.

FIG. 5A is a perspective view of a rack-mountable shippable computingdevice showing a coupling mechanism of the rack-mountable shippablecomputing device in an extended position, according to some embodiments.Device 500 may be the same as device 130 illustrated in FIGS. 1-4. Malecoupling mechanisms 502 are illustrated in FIG. 5 in an extendedposition and may be inserted into female coupling mechanisms, such asfemale coupling mechanisms 504, of an adjacent device.

FIG. 5B is a front view of two rack-mountable shippable computingdevices being coupled together via coupling mechanisms of the tworack-mountable shippable computing devices, according to someembodiments. In FIG. 5B, an extended male coupling mechanism of device506 is being coupled into female coupling mechanism 504 of device 500and male coupling mechanism 502 of device 500 is being coupled into afemale coupling mechanism of device 506. In some embodiments, couplingfemale and male coupling mechanisms of adjacent devices, such asadjacent rack-mountable shippable computing devices may couple thedevices together such that the coupled devices can be mounted in a rackas a group of devices that spans a width of the rack. Also, partiallyextended mounting brackets of coupled devices may be oriented to couplewith left and right rack rails on opposite sides of a width of a rack.For example, mounting brackets 508 may couple with a left rail of a rackand mounting brackets 510 may couple with a right rail of a rack. Device506 may be the same as device 130 illustrated in FIGS. 1-4.

In some embodiments, other coupling mechanisms may be used to couplecomputing devices, such as devices 500 and 506, together. For example,device 500 may include a tongue that slides into a groove of device 506to couple the devices together via a tongue and groove couplingmechanism. In another example, device 500 may have one or more raisedchannels along a length of device 500 that are configured to couple withcorresponding indention channels along a length of device 506 to couplethe devices together via a dovetail coupling mechanism. In someembodiments, raised channels and indentions channels of a dovetailcoupling mechanism may include angled surfaces, such that a crosssection of a raised channel has a dovetail shape. In some embodiments,other coupling mechanisms may be used, such as Velcro, or other suitablecoupling mechanisms that provide sufficient rigidity to support thedevices when the devices are coupled together and mounted in a rack viamounting brackets on either end of the coupled devices.

In some embodiments, some rack-mountable shippable computing devices maybe mounted in a rack in a non-perpendicular orientation and otherrack-mountable computing devices may be mounted in the same rack in aperpendicular orientation. For example, in some embodiments,rack-mountable shippable computing devices may be configured such that apair of two devices spans a width of a standard rack and a customer mayreceive an odd number (i.e. a number other than 2, 4, etc.) ofrack-mountable shippable data storage devices. The customer may mountthe rack-mountable shippable data storage devices in pairs that span thewidth of the rack and mount the additional odd-numbered rack-mountableshippable computing device of in a perpendicular orientation.

FIG. 6A is a front view of a rack with multiple rack-mountable shippablecomputing devices mounted in the rack, according to some embodiments. InFIG. 6A, devices 602 and 604 are coupled together via couplingmechanisms 608 and mounted in rack 610 via partially extended mountingbrackets 612. Device 606 is mounted in a perpendicular orientation viamounting brackets 614 that are extended further than mounting brackets612.

FIG. 6B is a side view of a rack with multiple rack-mountable shippablecomputing devices mounted in the rack, according to some embodiments. Ascan be seen in the side view, devices 602 and 604 mounted in thenon-perpendicular orientation may span the depth of rack 610 whereasdevice 606 mounted in the perpendicular orientation may only span aportion of the depth of rack 610.

In some embodiments, any suitable fastener may be used to mount arack-mountable shippable computing device to a rack, such as screws,bolts, Allen bolts, etc. For example, devices 602, 604, and 606 arecoupled with rack 610 via mounting brackets 612 and 614 and bolts 616.

Devices 602, 604, and 606 may be the same as device 130 illustrated inFIGS. 1-4.

Computing Device Lifecycle

FIG. 7 is a flow diagram of a process of using a rack-mountableshippable computing device, according to some embodiments. FIG. 7illustrates a computing device lifecycle, according to some embodiments.The illustrated process may be performed within the context of arack-mountable shippable computing device 130, service provider 120 andcustomer location 110 as described in FIG. 1.

At 702, a service provider (e.g., service provider 120) provisions arack-mountable shippable data transfer device (e.g., device 130) andsets an electronic display of the device. For example, the serviceprovider may set the electronic display 214 (e.g., via the device userinterface or via an external connection through the network interface)to display a customer destination address. In some embodiments, theservice provider may also store a return address or the address ofanother customer facility in memory of the device such that the displaycan be updated with the stored address at some point.

At 704, the device 130 is shipped as a self-contained shipping containerto a destination that is indicated by the device's electronic display.For example, the service provider may provide the device with theenclosure, the display, the persistent storage and the network interfaceto a common carrier without any additional packaging or labeling. Thecommon carrier may ship the device through the carrier network to thedestination without packaging or labeling in addition to the enclosureand electronic display, in embodiments.

At 706, the device is received at the customer site (e.g., customerlocation 110) the device is mounted in a rack at the customer locationand installed onto a network at the customer site. Subsequently data isloaded onto the device 130. At 708, the electronically displayeddestination may be updated and the device 130 may be removed from therack at the customer location and shipped as a self-contained shippingcontainer to the updated destination indicated by the device'selectronic display. The display may be updated with a destinationaddress or code that was stored in memory of the device 130 atprovisioning or received over a network (network 108) while en route orat a customer location. The updated address may be a return address forreturning the device to the service provider or an address of anotherlocation for the same or different customer (e.g., security provisionsmay be implemented such that data from multiple customers can be storedon the device).

At 710, the device is shipped to the next customer site, where thedevice can be mounted in another rack, installed in a customer network,and more data encrypted and loaded onto the device 130 (similar to 706).The process may continue through 708 and 710 one or more times until thedevice is updated with the service provider address and given to acarrier to ship to the service provider network location. At 712, thedata from the device 130 is ingested or transferred into a storageservice of the service provider 120. For example, the device is receivedby the service provider 120, connected to a service provider network,the data from the device unencrypted and the data stored to a serviceprovider storage service.

At 714, the device is wiped of data (e.g., customer data and securityinformation deleted or overwritten) and readied for reuse. The processmay begin again at 702 and continue.

FIGS. 8-12 illustrate various processes associated with device 130. FIG.8 illustrates a provisioning process that may be performed by theservice provider that associated a particular device 130 with aparticular customer job. FIG. 9 illustrates a process of a customermounting rack-mountable shippable data transfer devices in one or moreracks at a customer location. FIG. 10 illustrates a customer-sideprocess for connecting the device to the customer's storage, loadingdata onto the device, and updating the electronic display with the nextdestination. FIG. 11 illustrates a process of removing a rack-mountableshippable computing device from a rack at a customer facility andpreparing the device to be shipped. FIG. 12 illustrates a process ofoff-loading data from the device that may be performed by the serviceprovider when the device 130 is received back by the service provider.The illustrated processes depict alternative import/export embodimentswhere appropriate.

Provisioning

FIG. 8 is a flow diagram of a provisioning process associated with arack-mountable shippable computing device, according to someembodiments. One or more portions of the illustrated process may beperformed by one or more processes executing on a provider computer ornetwork, in some embodiments. The illustrated process may be performedon device 130, illustrated in FIGS. 1-4, or similar devices illustratedin FIGS. 5-6.

At block 802, one or more requests are received for a customer dataimport or export job(s) via a console. The console may be configured toprovide access and management of data transfer projects or jobs througha network-based user interface. The network-based user interface may beprovided by the service provider, in some embodiments. The console maybe configured to receive various project data from the customer and toprovide that data to the service provider. The service provider may usethe data as part of the provisioning process as well as part of anauthentication process on the customer network when the device isconnected to the customer network, in some embodiments.

At block 804, the rack-mountable shippable computing devices areprovisioned and security information is installed on the devices. Forexample, particular computing devices may be removed from storage,associated with a customer project or job and loaded with keys, securitycertificates or the like such that the device 130 can be shipped to thecustomer that made the request.

In an export embodiment (e.g., when a customer requests to export datafrom a storage service provider system via the computing devices), datamay be loaded from a storage network of the service provider onto thecomputing devices.

At block 806, the electronic display 214 of the rack-mountable shippablecomputing device 130 may be set with the customer-supplied shippingaddress (an address obtained via the console, for example). For example,the service provider may set the display via the network interface ofthe device. At block 808, the rack-mountable shippable computing devices130 are provided to the carrier as self-contained shipping containers.For example, the rack-mountable shippable computing device may beprovided to, and shipped by, a common carrier without any additionalpackaging or labeling beyond the enclosure and electronic displaydevice. In some embodiments, the device 130 may be configured to receivecommands from a common carrier or from the service provider that causethe device to display bar codes or the like that are used by the commoncarrier for routing the device through the carrier network.

FIG. 9 is a flow diagram of a client-side installation processassociated with a rack-mountable shippable computing device, accordingto some embodiments. At 902 rack-mountable shippable computing devicesare received at a customer facility. The devices may be shipped to thecustomer facility via a common carrier such as the United States PostalService, UPS, FedEx, etc. In some embodiments, a single rack-mountableshippable computing device may be received at the customer facility ormultiple rack-mountable shippable computing devices may be received atthe customer facility.

At 904, if multiple rack-mountable shippable computing devices arereceived, elements of coupling mechanisms of the rack-mountableshippable computing devices are extended. For example, in someembodiments coupling mechanisms may include pins that are mounted via apivot that allows the pins to rotate about the pivot to extend the pinsout of a space in an enclosure of a rack-mountable shippable computingdevice in which the pins are stowed while the device is beingtransported. For example, coupling mechanisms may be extended in asimilar manner as illustrated in FIG. 5A. In some embodiments, 904 maybe omitted and a rack-mountable shippable computing device may bemounted in a rack in a perpendicular orientation without being coupledwith another device.

At 906, mounting brackets of a rack-mountable shippable computing deviceare extended. In some embodiments, the mounting brackets may be extendedpartially if the device is to be mounted in a perpendicular orientationor may be further extended if the device is to be mounted in anon-perpendicular orientation.

If multiple rack-mountable shippable computing devices are to be mountedin a rack, at 908 the devices may be coupled together prior to beingmounted in the rack via extended coupling mechanisms, such as thecoupling mechanisms extended at 904. Multiple rack-mountable shippablecomputing devices may be coupled together in a similar manner asillustrated in FIG. 5B. In some embodiments, in which a single device oran odd number of devices is to be installed in a rack, 908 may beomitted.

At 910, a rack-mountable shippable computing device or a set of coupleddevices including a rack-mountable shippable computing device aremounted in a rack via extended mounting brackets, such as the mountingbrackets extended at 906. In some embodiments, a suitable fastener, suchas a bolt, screw, etc., may be used to couple an extended mountingbracket with a rail of a rack. In some embodiments, a rack-mountableshippable computing device may be mounted in a standard EIA 19″ rack. Insome embodiments, a height of a rack-mountable shippable computingdevice may span one or more rack units when mounted in a standard rack.For example, a rack-mountable shippable computing device may have aheight of 1 U, 1.5 U, 2 U. etc. when mounted in the non-perpendicularorientation or when mounted in the perpendicular orientation.

FIG. 10 is a flow diagram of a client side process associated with arack-mountable shippable computing device at a customer location,according to some embodiments. Various portions of the process may beperformed by a server or other computer on a customer network (e.g.,customer location 110) as part of moving data from the customer networkto device 130. In some embodiments, portions of the process may beperformed by a downloaded proprietary application executing on thecustomers hardware. The proprietary application may be downloaded fromthe service provider, in some embodiments.

A rack-mountable shippable computing device is received from thecarrier. For example, device 130 may be received at a customer site(e.g., customer location 110) from a common carrier. The rack-mountableshippable computing device is mounted in a rack at the customerlocation, for example, as described in FIG. 9. The computing device isconnected to the customer network (block 1002). This may includephysically connecting the device 130 to a network of the customer (e.g.,via Ethernet or SATA or the like).

At 1004, the customer server (e.g., via execution of the downloadedapplication) discovers and validates the computing device. For example,the customer server may validate the computing device 130 based on oneor more security certificates. At some point, the destinationinformation that is displayed during shipment of the computing devicemay be updated (block 1006), via network 108, via cellular network, orbased on a stored address within the device, for example.

If the job is an export job (e.g., exporting data from the serviceprovider storage network via the computing devices), the data may bemoved from the computing device to customer-specified storage (block1009). If the job is an import job (e.g., importing data from thecustomer to the service provider), the customer server may encrypt thecustomer data and load the encrypted customer data onto the computingdevice (block 1010) and the electronic display may be set for the nextdestination (block 1012), based on the updated destination information,above, for example.

The computing device may be disconnected from the customer network(block 1014).

FIG. 11 is a flow diagram of a client-side uninstallation processassociated with a rack-mountable shippable computing device, accordingto some embodiments. At 1102 one or more rack-mountable shippablecomputing devices are removed from a rack at a customer location. Insome embodiments, fasteners, such as bolts, may be disengaged to removea device from a rack in which the device is mounted. In someembodiments, devices may be coupled together via one or more couplingmechanisms and removing the rack-mountable shippable computing devicesfrom the rack may further include de-coupling coupled devices.

At 1104 elements of a coupling mechanism, such as extended pins, arestowed in a space in an enclosure of a rack-mountable shippablecomputing device. For example, elements of a coupling mechanism may bestowed in a space of an enclosure as illustrated in FIG. 4A. In someembodiments, in which a rack-mountable shippable computing device ismounted in a rack as a single device in a perpendicular orientation,elements of a coupling mechanism of the device may already be stowed,and 1104 may be omitted.

At 1106 mounting brackets of the rack-mountable shippable computingdevices are stowed in respective enclosures of the rack-mountableshippable computing devices. For example, mounting brackets may includea hinge that allows the mounting brackets to be extended out from anenclosure and rotated back into the enclosure to stow the mountingbrackets.

At 1108 a rack-mountable shippable computing device may be provided to acarrier as a self-contained shipping container, as described herein. Insome embodiments, the device 130 may be sent to another customer formore data to be loaded on the device before being sent back to theservice provider (e.g., provider 120).

FIG. 12 is a flow diagram of a service provider data ingestion processassociated with a rack-mountable shippable computing device, accordingto some embodiments. In embodiments, an application executing on theservice provider 120 network performs some portion of all of the processillustrated in FIG. 12, after the device is received back from thecustomer 110, for example.

At block 1202, the rack mountable shippable computing device is receivedat the service provider from a carrier (e.g., as a self-containedshipping container 130). The data rack-mountable shippable computingdevice may be connected to the service provider network (block 1204) andthe customer data from the computing device read, decrypted and storedto a storage service of the service provider (block 1206). The computingdevice may be prepared for re-use, the customer data and/or securityinformation wiped from the persistent storage of device 130, forexample.

FIGS. 13A-13B illustrate various types of information displayed via anupdateable electronic display, according to some embodiments. Theillustrated examples are applicable to various device embodimentsincluding but not limited to those depicted in FIGS. 1-6 and describedabove.

FIG. 13A illustrates an updateable device display of a rack-mountableshippable computing device with network-updateable electronic inkshipping display. In the illustrated embodiment, the display 214 ofdevice 130 is displaying sender (1400 Ave. A, STE C) and recipientaddress information (BLDG 2, 123 HWY 14), tracking information (e.g.,tracking bar code and associated tracking no. 1ksd949 . . . ), a routingcode DL 787 902 (e.g., tells how to route a package within a carriernetwork or facility), a postal bar code that features the zip code forthe package's destination (e.g., 1234abcd), and a QR code that mayencode various information (e.g., postal code, country code, serviceclass (IDA etc.), tracking number, Julian date, package quantity andweight, address validation, and ship street, city and state).

In some embodiments, various information may be hidden or obscured ordisplayed in code, instead of directly displayed in the display. Forexample, addresses may be coded so as to obscure the destination frombeing readily recognizable without computer aid such as a scanner. Forexample, FIG. 13B illustrates an updateable device display of ashippable computing device with network-updateable electronic inkshipping display where the display 214 of device 130 is only displayinga single QR code. Any of various information may be encoded in the QRcode and decoded via scanner or image processing device such as addressinformation, or the like. In some embodiments, information may be hiddenor obscured or not displayed according to geographical location. Forexample, the computing device may not display the address of the serviceprovider while at the customer site and may instead display instructionsto provide the rack-mountable shippable computing device to a carrier.The device may transition the display to display the address of theservice provider once the device has left the customer premises, or maydisplay a coded version of the destination address that is only computerreadable, in embodiments.

Any of various computer systems may be configured to implement theprocesses associated (e.g., provisioning or ingestion by the serviceprovider or execution of the downloaded application on a customerserver) with a rack-mountable shippable computing device withnetwork-updateable electronic ink shipping display. For example, FIG. 14is a block diagram illustrating one embodiment of a computer systemsuitable for implementing some of the systems and methods describedherein. In various embodiments, the storage service of the serviceprovider at the storage service location 120, or customer computers atenterprise location 110 (e.g., customer server) may each include acomputer system 1400 such as that illustrated in FIG. 14.

In the illustrated embodiment, computer system 1400 includes one or moreprocessors 1410 coupled to a system memory 1420 via an input/output(I/O) interface 1430. Computer system 1400 further includes a networkinterface 1440 coupled to I/O interface 1430. In some embodiments,computer system 1400 may be illustrative of servers implementingenterprise logic or downloadable application, while in other embodimentsservers may include more, fewer, or different elements than computersystem 1400.

In various embodiments, computer system 1400 may be a uniprocessorsystem including one processor 1410, or a multiprocessor systemincluding several processors 1410 (e.g., two, four, eight, or anothersuitable number). Processors 1410 may be any suitable processors capableof executing instructions. For example, in various embodiments,processors 1410 may be embedded processors implementing any of a varietyof instruction set architectures (ISAs), such as the x106, PowerPC,SPARC, or MIPS ISAs, or any other suitable ISA. In multiprocessorsystems, each of processors 1410 may commonly, but not necessarily,implement the same ISA.

System memory 1420 may be configured to store instructions and dataaccessible by processor 1410. In various embodiments, system memory 1420may be implemented using any suitable memory technology, such as staticrandom access memory (SRAM), synchronous dynamic RAM (SDRAM),non-volatile/Flash-type memory, or any other type of memory. In theillustrated embodiment, program instructions and data implementingdesired functions, such as those methods and techniques described abovefor the service provider or downloadable proprietary software are shownstored within system memory 1420 as program instructions 1425. In someembodiments, system memory 1420 may include data 1435 which may beconfigured as described herein.

In one embodiment, I/O interface 1430 may be configured to coordinateI/O traffic between processor 1410, system memory 1420 and anyperipheral devices in the system, including through network interface1440 or other peripheral interfaces. In some embodiments, I/O interface1430 may perform any necessary protocol, timing or other datatransformations to convert data signals from one component (e.g., systemmemory 1420) into a format suitable for use by another component (e.g.,processor 1410). In some embodiments, I/O interface 1430 may includesupport for devices attached through various types of peripheral buses,such as a variant of the Peripheral Component Interconnect (PCI) busstandard or the Universal Serial Bus (USB) standard, for example. Insome embodiments, the function of I/O interface 1430 may be split intotwo or more separate components, such as a north bridge and a southbridge, for example. Also, in some embodiments, some or all of thefunctionality of I/O interface 1430, such as an interface to systemmemory 1420, may be incorporated directly into processor 1410.

Network interface 1440 may be configured to allow data to be exchangedbetween computer system 1400 and other devices attached to a network,such as other computer systems, for example. In particular, networkinterface 1440 may be configured to allow communication between computersystem 1400 and/or various I/O devices 1450. I/O devices 1450 mayinclude scanning devices, display devices, input devices and/or othercommunication devices, as described herein. Network interface 1440 maycommonly support one or more wireless networking protocols (e.g.,Wi-Fi/IEEE 802.11, or another wireless networking standard). However, invarious embodiments, network interface 1440 may support communicationvia any suitable wired or wireless general data networks, such as othertypes of Ethernet networks, for example. Additionally, network interface1440 may support communication via telecommunications/telephony networkssuch as analog voice networks or digital fiber communications networks,via storage area networks such as Fibre Channel SANs, or via any othersuitable type of network and/or protocol.

In some embodiments, system memory 1420 may be one embodiment of acomputer-accessible medium configured to store program instructions anddata as described above. However, in other embodiments, programinstructions and/or data may be received, sent or stored upon differenttypes of computer-accessible media. Generally speaking, acomputer-accessible medium may include computer-readable storage mediaor memory media such as magnetic or optical media, e.g., disk orDVD/CD-ROM coupled to computer system 1400 via I/O interface 1430. Acomputer-readable storage medium may also include any volatile ornon-volatile media such as RAM (e.g. SDRAM, DDR SDRAM, RDRAM, SRAM,etc.), ROM, etc., that may be included in some embodiments of computersystem 1400 as system memory 1420 or another type of memory. Further, acomputer-accessible medium may include transmission media or signalssuch as electrical, electromagnetic, or digital signals, conveyed via acommunication medium such as a network and/or a wireless link, such asmay be implemented via network interface 1440.

In some embodiments, I/O devices 1450 may be relatively simple or “thin”client devices. For example, I/O devices 1450 may be configured as dumbterminals with display, data entry and communications capabilities, butotherwise little computational functionality. However, in someembodiments, I/O devices 1450 may be computer systems configuredsimilarly to computer system 1400, including one or more processors 1410and various other devices (though in some embodiments, a computer system1400 implementing an I/O device 1450 may have somewhat differentdevices, or different classes of devices).

In various embodiments, I/O devices 1450 (e.g., scanners or displaydevices and other communication devices) may include, but are notlimited to, one or more of: handheld devices, devices worn by orattached to a person, and devices integrated into or mounted on anymobile or fixed equipment, according to various embodiments. I/O devices1450 may further include, but are not limited to, one or more of:personal computer systems, desktop computers, rack-mounted computers,laptop or notebook computers, workstations, network computers, “dumb”terminals (i.e., computer terminals with little or no integratedprocessing ability), Personal Digital Assistants (PDAs), mobile phones,or other handheld devices, proprietary devices, printers, or any otherdevices suitable to communicate with device 130. In general, an I/Odevice 1450 (e.g., cursor control device, keyboard, or display(s) may beany device that can communicate with elements of computing system 1400.In one embodiment, at least some of the I/O devices 1450 may beconfigured to scan or otherwise read or receive codes or identifiers ofvarious objects and to communicate the codes. Such components mayinclude, but are not limited to, one or more of items, orders,containers or suitcases.

The various methods as illustrated in the figures and described hereinrepresent illustrative embodiments of methods. The methods may beimplemented manually, in software, in hardware, or in a combinationthereof. The order of any method may be changed, and various elementsmay be added, reordered, combined, omitted, modified, etc. For example,in one embodiment, the methods may be implemented by a computer systemthat includes a processor executing program instructions stored on acomputer-readable storage medium coupled to the processor. The programinstructions may be configured to implement the functionality describedherein (e.g., the functionality of the enterprise logic, packingservice, product database, device and/or other communication devices,etc.).

Various modifications and changes may be made as would be obvious to aperson skilled in the art having the benefit of this disclosure. It isintended to embrace all such modifications and changes and, accordingly,the above description to be regarded in an illustrative rather than arestrictive sense.

Various embodiments may further include receiving, sending or storinginstructions and/or data implemented in accordance with the foregoingdescription upon a computer-accessible medium. Generally speaking, acomputer-accessible medium may include storage media or memory mediasuch as magnetic or optical media, e.g., disk or DVD/CD-ROM, volatile ornon-volatile media such as RAM (e.g. SDRAM, DDR, RDRAM, SRAM, etc.),ROM, etc., as well as transmission media or signals such as electrical,electromagnetic, or digital signals, conveyed via a communication mediumsuch as network and/or a wireless link.

What is claimed is:
 1. A system, comprising: a rack; and anetwork-attachable data transfer device comprising: a ruggedizedenclosure; a persistent storage medium mounted within the ruggedizedenclosure; a network connection accessible at or through the ruggedizedenclosure and configured to provide access to the persistent storagemedium as a network attached storage device; and a mounting bracketcoupled to the ruggedized enclosure, wherein the mounting bracket isconfigured to: extend out from the ruggedized enclosure when thenetwork-attachable data transfer device is mounted in the rack; and stowin a portion of the ruggedized enclosure when the network-attachabledata transfer device is being transported, wherein thenetwork-attachable data transfer device is configured to be mounted inthe rack: in a first orientation wherein a length of thenetwork-attachable data transfer device is oriented along a depth of therack; and in a perpendicular orientation wherein the length of thenetwork-attachable data transfer device spans a width of the rack. 2.The system of claim 1, wherein the ruggedized enclosure and thepersistent storage medium mounted within the ruggedized enclosure form aself-contained shipping container configured for shipping thenetwork-attachable data transfer device to another location, via acommon carrier, without additional packaging or labeling.
 3. The systemof claim 1, wherein the network-attachable data transfer device furthercomprises a coupling mechanism configured to physically couple thenetwork-attachable data transfer device to another network-attachabledata transfer device, wherein the coupling mechanism is configured to:extend out from the ruggedized enclosure of the network-attachable datatransfer device and couple the network-attachable data transfer devicewith an adjacent network-attachable data transfer device mounted in therack with the network-attachable data transfer device; and stow in aportion of the ruggedized enclosure of the network-attachable datatransfer device when the network-attachable data transfer device isbeing transported.
 4. The system of claim 1, wherein thenetwork-attachable data transfer device is configured to couple with therack, on a first side of the width of the rack, via an extended mountingbracket of the network-attachable data transfer device and couple withthe rack, on a second side of the width of the rack, via anotherextended mounting bracket of the network-attachable data transferdevice.
 5. The system of claim 4, wherein the network-attachable datatransfer device further comprises: a cable guide along a corner of theruggedized enclosure of the network-attachable data transfer device,wherein the cable guide is configured to accept a cable and route thecable from a first side of the network-attachable data transfer deviceto another side of the network-attachable data transfer device when thenetwork-attachable data transfer device is mounted in the rack.
 6. Thesystem of claim 1, wherein the network-attachable data transfer devicecomprises: an updateable electronic display incorporated into theruggedized enclosure and visible external to the ruggedized enclosure toprovide shipping destination information, wherein the updateableelectronic display is updateable to change the shipping destinationinformation.
 7. The system of claim 1, wherein the ruggedized enclosureof the network attachable data transfer device is ruggedized inaccordance with one or more standards comprising MIL STD 810 (MIL-SPEC)or IPXX (ingress protection) for dust and water protection.
 8. Acomputing device, comprising: a ruggedized enclosure; a storage mediummounted within the ruggedized enclosure; and a mounting bracket coupledto the ruggedized enclosure, wherein the mounting bracket is configuredto: extend out from the ruggedized enclosure and couple with a rack whenthe computing device is mounted in the rack; and stow in a portion ofthe ruggedized enclosure when the computing device is being transported,wherein the computing device is configured to be mounted in the rack: ina first orientation wherein a length of the computing device is orientedalong a depth of the rack; and in a perpendicular orientation whereinthe length of the computing device spans a width of the rack.
 9. Thecomputing device of claim 8 further comprising: a coupling mechanismconfigured to couple the computing device with another device, whereinthe coupling mechanism is configured to: extend out from the ruggedizedenclosure and couple the computing device with the other device; andstow in a portion of the ruggedized enclosure when the computing deviceis being transported.
 10. The computing device of claim 9, wherein thecoupling mechanism comprises: a pin coupled to the ruggedized enclosurevia a pivot, wherein the pin is configured to: fold out of a space inthe ruggedized enclosure to extend the pin out from the computingdevice; and fold into a space in the ruggedized enclosure to stow thepin in the space in the ruggedized enclosure.
 11. The computing deviceof claim 9, wherein the coupling mechanism comprises: a hole in theruggedized enclosure configured to accept a pin extended out from anadjacent computing device to which the computing device is beingcoupled.
 12. The computing device of claim 9, wherein the couplingmechanism is mounted on a first side of the computing device, whereinthe computing device further comprises: a network connection on a backside of the computing device, wherein the back side is orientedperpendicular to the first side, wherein the network connection isaccessible through the enclosure and configured to provide access to thestorage medium as a network-attached storage device.
 13. The computingdevice of claim 8, further comprising an additional mounting bracket,wherein the mounting bracket and the additional mounting bracket arecoupled to the ruggedized enclosure at opposite ends of a length of thecomputing device, wherein the length substantially spans a width of astandard rack, wherein the computing device is configured to mount in astandard rack in an orientation in which the length of the computingdevice is oriented along the width of the standard rack.
 14. Thecomputing device of claim 8, further comprising a cable guide along acorner of the ruggedized enclosure of the computing device, wherein thecable guide is configured to accept and route a cable from a first sideof the computing device to a back side of the computing device when thecomputing device is mounted in a rack.
 15. The computing device of claim8, wherein the computing device further comprises: an updateableelectronic display incorporated into the ruggedized enclosure andvisible external to the ruggedized enclosure to provide shippingdestination information, wherein the updateable electronic display isupdateable to change the shipping destination information.
 16. Thecomputing device of claim 8, wherein the ruggedized enclosure of thecomputing device is ruggedized in accordance with one or more standardscomprising MTh STD 810 (MIL-SPEC) or IPXX (ingress protection) for dustand water protection.
 17. The computing device of claim 8, wherein theruggedized enclosure of the computing device is configured such that thecomputing device is configured to be shipped by a common carrier withoutadditional packing.
 18. The computing device of claim 8, wherein theruggedized enclosure of the computing device is configured such that thecomputing device is configured to be shipped by a common carrier withoutadditional labeling.
 19. A method, comprising: receiving a computingdevice enclosed in a ruggedized enclosure, wherein the computing deviceis configured to be mounted in a rack: in a first orientation wherein alength of the computing device is oriented along a depth of the rack;and in a perpendicular orientation wherein the length of computingdevice spans a width of the rack; extending mounting brackets out fromthe ruggedized enclosure of the computing device; coupling the extendedmounting brackets to the rack to mount the computing device in the rackin the perpendicular orientation; and connecting a network connection ofthe computing device to a network, wherein the network connection isaccessible at or through the ruggedized enclosure of the computingdevice, and wherein the network connection provides access to a storagemedium of the computing device.
 20. The method of claim 19, furthercomprising: removing the coupled computing device from the rack; stowingthe mounting brackets in the ruggedized enclosure of the computingdevice; and shipping the computing device to another location withoutusing additional packaging or additional labeling.